<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>数组的常用方法</title>
</head>
<body>
<script>
    var arr1 = [100,200,300,400];
    //将数据加在数组的末尾
    arr1.push('追加的数据');
    console.log(arr1);
    //删除数组的最后一个元素
    arr1.pop();
    console.log(arr1);
    //在数组的最前面添加数组
    arr1.unshift('100');
    console.log(arr1);
    //删除数组最前面的数据
    arr1.shift();
    console.log(arr1);
    arr1.reverse();
    console.log(arr1);
    //删除数组中的数据，并选择是否插入新数据
    arr1.splice(0,3,100,200,300);
    console.log(arr1);
    //将数组排序 里面传入一个函数 表示排序顺序
    arr1.sort(
        function (a,b)
        {
            return a - b;
        }
    );
    console.log(arr1);
    //将数组用一个连接符连成字符串
    var res = arr1.join("%");
    console.log(res);
    //concat 将数组与其他数组连接到一起
    var arr2 = arr1.concat(['100','200']);
    console.log(arr2);
    //截取数组中的某些数据 开始索引 结束索引
    arr3 = arr2.slice(0,3);
    console.log(arr3);
    //找到数据在索引中的位置
    var index = arr3.indexOf(200);
    console.log(index);
    arr1.forEach(function (item,index,arr1) {
        //每一项
        console.log(item);
        //索引
        console.log(index);
        //数组
        console.log(arr1);
    });
    console.log('------------------------------')
    //映射数组
    var res = arr1.map(function (value,index,arr1) {
        return value * 10;
    })
    console.log(res);
    //过滤函数中的数据
    var res = arr1.filter(function (value, index, arr1) {
        return value > 150;
    })
    console.log(res);
    //判断数组是不是每一项都满足条件
    var flag = arr1.every(function (value,index,arr1) {
        return value >= 100;
    })
    console.log(flag);
    //判断是不是有某一项满足条件
    var flag2 = arr2.some(function (value, index, arr1) {
        return value > 1000;
    })
    console.log(flag2);
</script>
</body>
</html>